Docker提供虛擬化的環境來運行我們的機器學習程式碼。要使用什麼作業系統、安裝什麼工具庫、模型訓練時該啟用什麼樣的機器規格,可定義在Dockerfile。透過Dockerfile,我們能去Build一個印象檔Image。接著,我們把這個Docker Image跑在所謂的Container上。
Production Variants
模型上線後,我們可藉由Production Variants來設定多少inference流量可部署新的模型,以及新的模型持穩多久後,可以接受所有的inference流量。
SageMaker Neo用於優化我們要放在到終端設備(Intel、Arm與NVIDIA處理器)上的AI模型。SageMaker Neo的Compiler與Runtime可優化包含Tensorflow、PyTorch、MXNet 、ONNX、XGBoost、DarkNet與Keras的代碼框架。Compiled後的模型可透過IoT Greengrass放置到終端設備上。IoT Greengrass是一個運行在終端設備上的開源runtime與雲端服務,用來協助我們管理在設備上運行的AI模型。
被Neo compile過的模型,除了放在終端設備以外,亦可放在AWS雲端機器上。但是,有一點要留意的是,Neo compile模型過程,需要指定對應的雲端機器型別(C5、M5、M4、P3、P2)。
ChatGPT大大來出題
問題1:您正在開發一個機器學習模型,希望能夠部署在邊緣設備上,以實現低延遲推理。哪個AWS服務可以幫助您最佳地部署模型到邊緣設備?
A) SageMaker Neo
B) SageMaker Docker Container
C) AWS IoT Greengrass
D) AWS Lambda
答案:C) AWS IoT Greengrass
解釋: AWS IoT Greengrass是一個用於在邊緣設備上運行本地代碼的服務,包括機器學習模型。它可以幫助實現低延遲推理,並支持本地處理。
問題2:您想要使用自定義Docker容器來訓練和部署機器學習模型,並在Amazon SageMaker中運行這些容器。哪個AWS服務可以幫助您實現這一目標?
A) SageMaker Neo
B) SageMaker Docker Container
C) AWS IoT Greengrass
D) AWS Lambda
答案:B) SageMaker Docker Container
解釋: SageMaker Docker Container是Amazon SageMaker的一個功能,它允許您使用自定義Docker容器訓練和部署機器學習模型,並在SageMaker中運行這些容器。
問題3:您需要對在邊緣設備上運行的機器學習模型進行優化,以實現更高的效能。哪個AWS服務可以幫助您自動優化模型以適應不同的硬件和運行環境?
A) SageMaker Neo
B) SageMaker Docker Container
C) AWS IoT Greengrass
D) AWS Lambda
答案:A) SageMaker Neo
解釋: SageMaker Neo是Amazon SageMaker的一個功能,它可以自動優化機器學習模型,以適應不同的硬件和運行環境,包括邊緣設備。